home *** CD-ROM | disk | FTP | other *** search
/ By Popular Request 2.0 / By Popular Request 2.0 (Arsenal Computer).ISO / amiga_3 / dsctv17b.lha / document / History.doc < prev    next >
Text File  |  1995-03-20  |  9KB  |  201 lines

  1. * ------------------------------------------------------------------------- *
  2.  
  3.         Disect - ⌐ DMA 1994-5        24.11.94
  4.         =====================        ========
  5.  
  6. V1.0: 13 Mar-Oct 94    At times, I thought I'd never get there...
  7. -------------------
  8.  
  9. V1.1: 17.11.94-24.11.94    Well, from my rather affected memory:
  10. -----------------------
  11.  
  12.     1) No longer crashes if disassembly window at hardware registers
  13.     2) No longer need to define hundreds of copper addresses one
  14.         at a time (!)
  15.     3) DataStrings allow 'X' in base string
  16.     4) Will load executables containing LINE debug/HCLN hunks
  17.  
  18. V1.2: 25.11.94-29.11.94    Got fed up playing Frontier, so...
  19. -----------------------
  20.  
  21.     1) Gave screen a proper menu bar, and menus. ASL menus OK now.
  22.     2) Screen is now WB2+, ASL requester is (at last) blue!
  23.     3) Disect aware of 'gadtools.library' base address
  24.     4) Main window is now WFLG_BACKDROP, so now cannot lose ASL
  25.         requester window behind it! I remember the day I
  26.         discovered that one...
  27.     5) Key '+' swaps both disassembly windows
  28.     6) Symbol Window: LMB on a selected symbol, moves (upper)
  29.         disassembly window to address of (program) symbol
  30.     7) Up & Down arrow gadgets in disassembly windows
  31.  
  32. V1.3: 30.11.94-7.12.94
  33. ----------------------
  34.  
  35.     1) A bug which made Process crash/caused system corruption
  36.         on Process termination creeped into V1.1. Dead now...
  37.     2) INCBIN Request. Thanks to Mark M for that idea
  38.     3) Symbol Window: if press a letter key (with/without) SHIFT key,
  39.         or '.' key, and if symbols are sorted alphabetically,
  40.         now moves window to first symbol which begins with
  41.         that character
  42.     4) Improved algorithms for ensuring disassembly windows align
  43.         themselves to defined program addresses
  44.     5) Improved handling of global/local program symbol definition
  45.         and reference
  46.     6) Added an 'about' message
  47.     7) When define global program symbol, opens request if causes
  48.         local program symbols to be corrupted
  49.     8) RMB on a local in program symbol area moves disassembly window
  50.         the local's global symbol
  51.  
  52. V1.4: 7.12.94-11.12.94
  53. ----------------------
  54.  
  55.     1) When disassemble to file, will concatenate successive DC.X
  56.         statements to produce (much fewer) lines of source
  57.     2) RMB on instruction mnemonic moves PC to instruction
  58.     3) Can display addresses normally, or as hunk start offsets
  59.     4) Allows hunk offsets in expressions: "[0:64]"
  60.     5) Shift key WILL move memory window fast
  61.     6) Letters in hex now follow selected case
  62.     7) Up/down arrow gadgets in windows repeat if held down
  63.     8) Alarm sound when finds search data
  64.  
  65. V1.5: 18.12.94
  66. --------------
  67.  
  68.     1) RMB on displacement (eg: 'dd(Ax)') moves disass window to EA
  69.     2) WB requesters if cannot get resources
  70.  
  71. V1.6: 9.1.95-01.02.95
  72. ---------------------
  73.  
  74.      1) It sometimes missed arrow gadget messages, only responding
  75.         to them when another IDCMP message occurred which
  76.         created a signal bit to the message port. This
  77.         happened if LMB > 4 times quickly on arrow gadgets
  78.      2) System DataStrings: now contain 'X' for address pointers, and
  79.         is now aware of address pointers which point to other
  80.         system structures
  81.      3) System DataStrings: automatic line commenting, and automatic
  82.         program symbol name definition
  83.      4) Allows definition of user address same as previous defined
  84.      5) Allows a base offset address to be defined
  85.      6) LMB on SEA/DEA text to lock register zoom
  86.      7) Auto blank lines preference
  87.      8) SS 'Prev' gadget allows offsets from locals if same global
  88.      9) Dummy symbol selections can be used as line comment texts
  89.     10) Symbol Window now contains a scroller gadget
  90.     11) Disect aware of 'mathffp.library' base address
  91.     12) Added 'PROCP' reserved symbol name
  92.     13) Added Process Grabber, but only tested on A500+ so far
  93.     14) Request windows which take an address range: can enter '=',
  94.         '+X', and ',X' into end address string gadgets
  95.     15) Was unable to read any DSCT data file if the file contained
  96.         no user address structures
  97.     16) Could not detect characters between "9" and "A" as invalid in
  98.         hex numbers input by user
  99.     17) Added LMB function in Display Breakpoints request window
  100.     18) RMB in memory dump will define base offset address
  101.     19) No longer scans executable files to determine project memory
  102.         sizes, now uses seg list (the things you learn once
  103.         you get the RKMs...)
  104.     20) Data areas defined using system DataStrings now get DF'd as
  105.         macros
  106.     21) During DF, if a program symbol name length exceeds one tab
  107.         size, then the remainder of the source line will be
  108.         output using a new line
  109.     22) Increased executable file hunk limit
  110.  
  111. V1.7: 2.2.95-20.3.95
  112. --------------------
  113.  
  114.      1) When RMB on program address or displacement, right ALT will
  115.         move memory window to the address
  116.      2) Memory dump now contains a +/- cycle gadget
  117.      3) When filling memory: eg, if filling LONGs, but address range
  118.         was 31 bytes, Disect would actually write 32 bytes
  119.         (ie: 8 complete LONGs); also changed FORBID/CLEAR
  120.         CACHE/PERMIT method (once per byte, instead of once
  121.         per address range, since very large fills may FORBID
  122.         for too long); also did this for copy memory
  123.      4) Search memory also gives alarm sound when search ends (data
  124.         not found); source/ASCII searches now match any
  125.         number of spaces or tabs
  126.      5) During DF, if a program address was automatically replaced
  127.         with a (program) symbol (creating an instruction
  128.         address), the original address would still be logged
  129.         as an missing undefined-reference address; by adding
  130.         a single instruction, this was solved
  131.      6) Added Process Menu 'Breakpoint At Active Process PC' function,
  132.         but I think the world may not like this too much...
  133.      7) A new, improved Symbol Selection window...
  134.      8) Cute little arrow gadgets in main window to move disassembly
  135.         windows left and right
  136.      9) Disect refused to disassemble movec control registers (unless
  137.         the upper 4 bits of the opcode extension word were 0)
  138.     10) Disect hung when I ungrabbed what I had previously considered
  139.         to be a safe Process to do this to... it was a very
  140.         well hidden bug (since I did not realise that by
  141.         sending a Signal to a Wait()ing Process, a task-
  142.         switch might/will occur)
  143.     11) Added Process memory allocations monitor, & unfreed memory
  144.         list when Process terminates
  145.     12) History buffer no longer limited to only four entries (!)
  146.     13) ASL window size and coords now saved as Preferences
  147.     14) Can now extract symbols from .gs files
  148.     15) Binary files: allows load to a preferred address
  149.     16) Disect auto-replaces CUSTOM/CIA addresses with symbols
  150.     17) Another bug: if an address register contained a library base
  151.         address, and was displayed in register window as,
  152.         eg: 'BASEDOS', then the content of the address would
  153.         not be displayed
  154.     18) Mark M pointed out to me that 'CUSTOM' is defined in
  155.         'intuition/preferences.i', but not as $DFF000,
  156.         so had to rename the same symbol (held within
  157.         Disect executable file) to 'CUSTOM_BASE'
  158.     19) Allows '.x' in expressions for FFP values
  159.     20) Fill & Copy Memory: no longer FORBID/CLEAR CACHE/PERMIT
  160.     21) LMB on address digits in disass window: if right ALT pressed
  161.         moves memory window to address (instead of defining
  162.         a breakpoint)
  163.     22) Had a bit of screen corruption (register/memory window) if
  164.         defined a base offset which caused large offsets to
  165.         be displayed (eg: '[-$12345678]', which would not
  166.         fit into 10-chars available for it)
  167.     23) Now allows definition of key macros... it's simple, but
  168.         highly effective, and I'll sleep with a grin on
  169.         my face tonight! (I will get around to allowing
  170.         macros to be loaded/saved... eventually)
  171.     24) Previously, could not replace references to seglists with
  172.         program symbols (eg: 'move.l main-4,a0'), so Disect
  173.         will now do this automatically
  174.     25) Grabbing a Process would crash if it's pr_WindowPtr was -1
  175.     26) Now replaces 'jsr dd(a6)' with relevant '_LVO' symbols for
  176.         following libraries: Exec, DOS, Gfx, Int, ASL,
  177.         GadTools, MathFFP
  178.     27) Can no longer define breakpoints outside project memory range
  179.     28) MultiBin files load and save, and program 'AllocMultiBin'
  180.     29) Request window gadgets now display '_' characters beneath
  181.         letters equivalent to keyboard controls
  182.     30) Now allows definition of a Process's variables memory area
  183.         (either within Process, or allocated memory), and
  184.         can define user constant symbols as displacements
  185.         within this memory (eg: dd(ax)), so that Disect can
  186.         auto-replace any displacements with relevant constant
  187.         symbol
  188.     31) Disect will now display content of addresses (eg: register
  189.         window) as program symbols (no longer displays only
  190.         an address as a program symbol)
  191.     32) Found a very obscure bug: if a 'JSR _LVOAllocMem' was ('E')
  192.         executed (buffered), and if this memory was not freed
  193.         then when Process terminated, unfreed memory was not
  194.         listed as 'SELF' allocated
  195.     33) Now allows binary files to be inserted into loaded project
  196.     34) With much DSCT data (especially on a 500+!), things tended
  197.         to get slow, so added something to speed things up
  198.     35) Auto Trace mode!!
  199.     36) Hardware monitor (not finished?!)
  200.  
  201. * ------------------------------------------------------------------------- *